1. Field of the Invention
The present invention relates to performing arithmetic operations on interval operands within a computer system. More specifically, the present invention relates to a method and an apparatus for using a computer system to solve a global optimization problem including equality constraints with interval arithmetic.
2. Related Art
Rapid advances in computing technology make it possible to perform trillions of computational operations each second. This tremendous computational speed makes it practical to perform computationally intensive tasks as diverse as predicting the weather and optimizing the design of an aircraft engine. Such computational tasks are typically performed using machine-representable floating-point numbers to approximate values of real numbers. (For example, see the Institute of Electrical and Electronics Engineers (IEEE) standard 754 for binary floating-point numbers.)
In spite of their limitations, floating-point numbers are generally used to perform most computational tasks.
One limitation is that machine-representable floating-point numbers have a fixed-size word length, which limits their accuracy. Note that a floating-point number is typically encoded using a 32, 64 or 128-bit binary number, which means that there are only 232, 264 or 2128 possible symbols that can be used to specify a floating-point number. Hence, most real number values can only be approximated with a corresponding floating-point number. This creates estimation errors that can be magnified through even a few computations, thereby adversely affecting the accuracy of a computation.
A related limitation is that floating-point numbers contain no information about their accuracy. Most measured data values include some amount of error that arises from the measurement process itself. This error can often be quantified as an accuracy parameter, which can subsequently be used to determine the accuracy of a computation. However, floating-point numbers are not designed to keep track of accuracy information, whether from input data measurement errors or machine rounding errors. Hence, it is not possible to determine the accuracy of a computation by merely examining the floating-point number that results from the computation.
Interval arithmetic has been developed to solve the above-described problems. Interval arithmetic represents numbers as intervals specified by a first (left) endpoint and a second (right) endpoint. For example, the interval [a, b], where a<b, is a closed, bounded subset of the real numbers, R, which includes a and b as well as all real numbers between a and b. Arithmetic operations on interval operands (interval arithmetic) are defined so that interval results always contain the entire set of possible values. The result is a mathematical system for rigorously bounding numerical errors from all sources, including measurement data errors, machine rounding errors and their interactions. (Note that the first endpoint normally contains the “infimum”, which is the largest number that is less than or equal to each of a given set of real numbers. Similarly, the second endpoint normally contains the “supremum”, which is the smallest number that is greater than or equal to each of the given set of real numbers.)
One commonly performed computational operation is to perform equality constrained global optimization to find a global minimum of a nonlinear objective function subject to nonlinear equality constraints of the form qi(x)=0 (i=1, . . . , r). This can be accomplished by deleting boxes, or parts of boxes that do not satisfy one or more equality constraints, or by unconditionally deleting boxes that cannot contain the global minimum ƒ*.
To delete part or all of a subbox that fails to satisfy one or more equality constraints, term consistency and the interval Newton method can be used in combination.
To unconditionally delete part or all of a box that cannot contain the equality constrained global minimum, the smallest upper bound ƒ_bar so far computed on the global minimum ƒ* can be used.
In the presence of equality constraints, it can be difficult to identify a feasible point x that is guaranteed to satisfy all the given equality constraints. However, it is relatively easy to prove that a box X contains a feasible point. Given such a box, sup(ƒ(X)) provides a value of ƒ_bar. As this process progresses, ƒ_bar is updated using ƒ_bar=min(ƒ_bar, sup(ƒ(X))), given that the box X has been proved to contain a feasible point.
Given an ƒ_bar value, the ƒ_bar criterion is applied as an inequality constraint to delete parts or all of a given subbox.
If ƒ_bar is the smallest upper bound so far computed on ƒ, then any point x for which ƒ(x)>ƒ_bar can be deleted. Similarly, any box X can be deleted if inƒ(ƒ(X))>ƒ_bar.
In addition to solving for boxes with feasible points and the ƒ_bar criterion, the John conditions can be solved to delete parts or all of subboxes and to prove that a given subbox contains a feasible point. (The John conditions are described in “Global Optimization Using Interval Analysis” by Eldon R. Hansen, Marcel Dekker, Inc., 1992.)
Solving the John conditions works best “in the small” when the objective function ƒ is approximately quadratic and satisfied constraints are approximately linear. For large boxes containing multiple stationary points, solving the John conditions might not succeed in deleting much of a given box. In this case the box is split into two or more sub-boxes that are then processed independently. By this mechanism all the equality constrained global minima of a nonlinear objective function can be found.
One problem is applying this procedure to large n-dimensional interval vectors (or boxes) that contain multiple local minima. In this case, the process of splitting in n-dimensions can lead to exponential growth in the number of boxes to process.
It is well known that this problem (and even the problem of computing “sharp” bounds on the range of a function of n-variables over an n-dimensional box) is an “NP-hard” problem. In general, NP-hard problems require an exponentially increasing amount of work to solve as n, the number of independent variables, increases.
Because NP-hardness is a worst-case property and because many practical engineering and scientific problems have relatively simple structure, one problem is to use this simple structure of real problems to improve the efficiency of interval equality constrained global optimization algorithms.
Hence, what is needed is a method and an apparatus for using the structure of a nonlinear objective function to improve the efficiency of interval equality constrained global optimization software. To this end, what is needed is a method and apparatus that efficiently deletes “large” boxes or parts of large boxes that using the interval Newton method to solve the John conditions can only split.